from langchain.prompts import ChatPromptTemplate
from langchain_community.llms import Tongyi
import os


def get_redbook_content(key, text, temperature):
    os.environ["DASHSCOPE_API_KEY"] = 'sk-c44402d7a12c41299bb716af8d7e8bac'

    llm = Tongyi(temperature=temperature)

    title_human_prompt_content = """
        你需要根据我提供的主题:{text}去生成一个能在小红书app上发表的劲爆的文章标题
    """

    title_human_prompt_template = ChatPromptTemplate.from_messages(
        [
            ("system", "你是一个专业的视频标题撰写助手，可以根据我提供的主题去撰写视频标题"),
            ("human", title_human_prompt_content)
        ]
    )

    title_prompt = title_human_prompt_template.invoke({"text": text})

    title = llm.invoke(title_prompt)

    body_prompt_content = """
        Context(上下文)：
        我想根据以下文章标题生成一份小红书文案
        文章标题:{title}

        Objective(目的)：
        帮我写一篇内容完整，层次分明，带有搞笑和通俗易懂的视频文稿，要求文章中对于‘你’的称呼一律换成‘家人们’。


        Style(样式)：
        要求开头抓住眼球，中间提供干货内容，结尾有惊喜，脚本的格式也安装[开头，中间，结尾]分隔。

        Tone(语调)：
        常用语：家人们谁懂啊，绝绝子，跺脚脚，时尚。

        Audience(受众)：
        女性，伪装成女性反串的男性，软广告商。

        Response(响应)：
        层次分明，详细且简介。
    """

    body_prompt_template = ChatPromptTemplate.from_messages(
        [
            ("human", body_prompt_content)
        ]
    )

    body_prompt = body_prompt_template.invoke({"title": title})

    response = llm.invoke(body_prompt)

    return title, response
